窥孔优化:编译器(或汇编器)在生成的短小指令序列上做“局部改写”的优化方法。它像从“窥孔”里只看一小段代码,通过替换、删除或重排少量指令来提升性能、减少指令数或消除冗余。(也常用于机器码/汇编层面的微优化。)
/ˈpiːpˌhoʊl ˌɑːptɪməˈzeɪʃən/
The compiler applied peephole optimization to remove redundant moves.
编译器使用窥孔优化去掉了多余的寄存器移动指令。
After instruction selection, peephole optimization can combine a load and an add into a single addressing-mode instruction on some architectures, reducing both code size and execution time.
在指令选择之后,窥孔优化可以在某些体系结构上把一次加载和一次加法合并成一条带寻址模式的指令,从而同时减少代码体积和运行时间。
peephole 原义是“门上的猫眼/窥视孔”,引申为“只能看到一小段范围的窗口”。peephole optimization 这个术语借用该意象,强调它只在很小的代码窗口(通常几条指令)内进行模式匹配式的改写优化,而不是全程序范围的全局分析。